package com.hlkj.baojin.service;

import com.hlkj.baojin.entity.AlarmRecord;
import com.hlkj.baojin.entity.EarlyAlarmRecord;
import com.hlkj.baojin.entity.dto.*;
import com.hlkj.baojin.utils.bean.Page;

/**
 * @author 徐其伟
 * @Description:
 * @date 18-12-17 上午9:50
 */
public interface AlarmRecordService {
    void addAlarmRecord(AlarmRecord alarmRecord);

    void addEarlyAlarmRecord(EarlyAlarmRecord alarmRecord);

    void recoverAlarm(String id, Long createTime);

    boolean findByDevice(String id);

    ModelList<AlarmRecordDto> listAlarmRecord(AlarmSearch alarmSearch, Page page);

    AlarmRecordDto getAlarmRecord(String id);

    ModelList<EarlyAlarmRecordDto> listEarlyAlarmRecord(AlarmSearch alarmSearch, Page page);

    EarlyAlarmRecordDto getEarlyAlarm(String id);

    void commitAlarm(String id, AlarmReason alarmReason);

    void commitHandle(String id, HandleMethod handleMethod);

    StatusDataVO alarmWaveMsg(String id);

    boolean findByDeviceEarly(String id);

    void recoverEarlyAlarm(String id, long createTime);
}
